import pandas as pd
import matplotlib.pyplot as plt
from matplotlib import rcParams

# 设置中文字体
rcParams['font.sans-serif'] = ['SimHei']
rcParams['axes.unicode_minus'] = False

# 读取Excel文件
df = pd.read_excel(r'd:\项目日志\git-mcp-test\project\练习一\FhjlViewDD.xlsx', engine='openpyxl')

# 使用'创建时间'列进行日期处理
df['创建时间'] = pd.to_datetime(df['创建时间'])
june_data = df[df['创建时间'].dt.month == 6]

# 按发货地分组统计，使用'净重'列作为发货量
grouped = june_data.groupby('发货地')['净重'].sum()

# 绘制饼图
plt.figure(figsize=(10, 6))
# 绘制饼图（不显示标签）
wedges = plt.pie(grouped.values, 
                labels=None,  # 不显示标签
                startangle=90)[0]

# 创建自定义图例文本（发货地 + 百分比）
legend_labels = [f"{loc}: {pct:.1f}%" 
                for loc, pct in zip(grouped.index, 
                                  grouped.values/grouped.values.sum()*100)]

# 添加图例
plt.legend(wedges, legend_labels,
          title="发货地及占比",
          loc="center left",
          bbox_to_anchor=(1, 0.5),
          fontsize=10)

plt.tight_layout()
# 生成发货量统计表格
grouped.to_excel(r'd:\项目日志\git-mcp-test\project\练习一\马铭霞\（d）6月份各发货地发货总量统计表.xlsx')

# 保存图表到指定目录
plt.savefig(r'd:\项目日志\git-mcp-test\project\练习一\（d）6月份各发货地的发货总量饼状图.png', 
           dpi=300, 
           bbox_inches='tight')
plt.show()
plt.savefig(r'd:\项目日志\练习一\马铭霞\chart.png', dpi=300, bbox_inches='tight')